

Namespace UI
    ''' <summary>
    ''' This defines a user desktop setting, it contains all information to reload/save a current desktop layout
    ''' </summary>
    ''' <remarks></remarks>
    <Serializable(), ObfuscationAttribute(Exclude:=True, ApplyToMembers:=True)> _
    Public Class UserDesktopSettings

        Private mName As String = ""
        Private mStreamControlSettings As New UserStreamControlSettingsCollection
        <Runtime.Serialization.OptionalField()> _
        Private m2DGraphVisible As Boolean = False
        <Runtime.Serialization.OptionalField()> _
       Private m3DGraphVisible As Boolean = False

        Sub New(ByVal Name As String)
            mName = Name
        End Sub

        ''' <summary>
        ''' Specifies the name of the user desktop sttings
        ''' </summary>
        ''' <value></value>
        ''' <returns></returns>
        ''' <remarks></remarks>
        Public ReadOnly Property Name() As String
            Get
                Return mName
            End Get
        End Property

        Public ReadOnly Property StreamControlSettings() As UserStreamControlSettingsCollection
            Get
                Return mStreamControlSettings
            End Get
        End Property

        Public Property Graph2DVisible() As Boolean
            Get
                Return m2DGraphVisible
            End Get
            Set(ByVal value As Boolean)
                m2DGraphVisible = value
            End Set
        End Property

        Public Property Graph3DVisible() As Boolean
            Get
                Return m3DGraphVisible
            End Get
            Set(ByVal value As Boolean)
                m3DGraphVisible = value
            End Set
        End Property


    End Class
End Namespace


